home *** CD-ROM | disk | FTP | other *** search
/ QRZ! Ham Radio 1 / QRZ Ham Radio Callsign Database - December 1993.iso / ucsd / packet / tcpip / sys5 / iscwmpst.z / iscwmpst / tcp / src / socket.h < prev    next >
Encoding:
C/C++ Source or Header  |  1991-07-17  |  4.2 KB  |  144 lines

  1. /* @(#) $Header: socket.h,v 1.7 91/07/16 17:55:48 deyke Exp $ */
  2.  
  3. #ifndef _SOCKET_H
  4. #define _SOCKET_H
  5.  
  6. #ifndef _GLOBAL_H
  7. #include "global.h"
  8. #endif
  9.  
  10. #ifdef  ANSIPROTO
  11. #include <stdarg.h>
  12. #endif
  13.  
  14. #ifndef _MBUF_H
  15. #include "mbuf.h"
  16. #endif
  17.  
  18. #ifndef _PROC_H
  19. #include "proc.h"
  20. #endif
  21.  
  22. /* Local IP wildcard address */
  23. #ifndef INADDR_ANY
  24. #define INADDR_ANY      0x0L
  25. #endif
  26.  
  27. /* IP protocol numbers */
  28. #define IPPROTO_ICMP    1
  29. #define IPPROTO_TCP     6
  30. #define IPPROTO_UDP     17
  31. #define IPPROTO_AX25    93
  32. #define IPPROTO_IP      94
  33.  
  34. /* TCP port numbers */
  35. #define IPPORT_ECHO     7       /* Echo data port */
  36. #define IPPORT_DISCARD  9       /* Discard data port */
  37. #define IPPORT_FTPD     20      /* FTP Data port */
  38. #define IPPORT_FTP      21      /* FTP Control port */
  39. #define IPPORT_TELNET   23      /* Telnet port */
  40. #define IPPORT_SMTP     25      /* Mail port */
  41. #define IPPORT_FINGER   79      /* Finger port */
  42. #define IPPORT_TTYLINK  87      /* Chat port */
  43. #define IPPORT_POP      109     /* pop2 port */
  44. #define IPPORT_NNTP     119     /* Netnews port */
  45.  
  46. /* UDP port numbers */
  47. #define IPPORT_DOMAIN   53
  48. #define IPPORT_BOOTPS   67
  49. #define IPPORT_BOOTPC   68
  50. #define IPPORT_RIP      520
  51. #define IPPORT_REMOTE   1234    /* Pulled out of the air */
  52.  
  53. #if 0
  54.  
  55. #define AF_INET         0
  56. #define AF_AX25         1
  57. #define AF_NETROM       2
  58. #define AF_LOCAL        3
  59.  
  60. #define SOCK_STREAM     0
  61. #define SOCK_DGRAM      1
  62. #define SOCK_RAW        2
  63. #define SOCK_SEQPACKET  3
  64.  
  65. /* Socket flag values - controls newline mapping */
  66. #define SOCK_BINARY     0       /* socket in raw (binary) mode */
  67. #define SOCK_ASCII      1       /* socket in cooked (newline mapping) mode */
  68. #define SOCK_QUERY      2       /* Return setting without change */
  69.  
  70. #define EMFILE  1
  71. #define EBADF   2
  72. #define EINVAL  3
  73. #define ESOCKTNOSUPPORT 4
  74. #define EAFNOSUPPORT    5
  75. #define EOPNOTSUPP      6
  76. #define EFAULT          7
  77. #define ENOTCONN        8
  78. #define ECONNREFUSED    9
  79. #define EAFNOSUPP       10
  80. #define EISCONN         11
  81. #define EWOULDBLOCK     12
  82. #define EINTR           13
  83. #define EADDRINUSE      14
  84. #define ENOMEM          15
  85. #define EMSGSIZE        16
  86. #define EALARM          17
  87. #define EABORT          18
  88.  
  89. extern int32 Ip_addr;
  90.  
  91. /* In socket.c: */
  92. extern int Axi_sock;    /* Socket listening to AX25 (there can be only one) */
  93.  
  94. int accept __ARGS((int s,char *peername,int *peernamelen));
  95. int bind __ARGS((int s,char *name,int namelen));
  96. int close_s __ARGS((int s));
  97. int connect __ARGS((int s,char *peername,int peernamelen));
  98. void freesock __ARGS((struct proc *pp));
  99. int getpeername __ARGS((int s,char *peername,int *peernamelen));
  100. int getsockname __ARGS((int s,char *name,int *namelen));
  101. int listen __ARGS((int s,int backlog));
  102. int recv_mbuf __ARGS((int s,struct mbuf **bpp,int flags,char *from,int *fromlen));
  103. int send_mbuf __ARGS((int s,struct mbuf *bp,int flags,char *to,int tolen));
  104. int setflush __ARGS((int s,int c));
  105. int shutdown __ARGS((int s,int how));
  106. int socket __ARGS((int af,int type,int protocol));
  107. void sockinit __ARGS((void));
  108. int sockkick __ARGS((int s));
  109. int socklen __ARGS((int s,int rtx));
  110. struct proc *sockowner __ARGS((int s,struct proc *newowner));
  111. int usesock __ARGS((int s));
  112. int socketpair __ARGS((int af,int type,int protocol,int sv[]));
  113.  
  114. /* In sockuser.c: */
  115. void flushsocks __ARGS((void));
  116. int keywait __ARGS((char *prompt,int flush));
  117. int recv __ARGS((int s,char *buf,int len,int flags));
  118. int recvchar __ARGS((int s));
  119. int recvfrom __ARGS((int s,char *buf,int len,int flags,char *from,int *fromlen));
  120. int recvline __ARGS((int s,char *buf,unsigned len));
  121. int rrecvchar __ARGS((int s));
  122. int send __ARGS((int s,char *buf,int len,int flags));
  123. int sendto __ARGS((int s,char *buf,int len,int flags,char *to,int tolen));
  124. int seteol __ARGS((int s,char *seq));
  125. int sockmode __ARGS((int s,int mode));
  126. void tflush __ARGS((void));
  127. int tprintf __ARGS((char *fmt,...));
  128. int tputc __ARGS((char c));
  129. int tputs __ARGS((char *s));
  130. int usflush __ARGS((int s));
  131. int usprintf __ARGS((int s,char *fmt,...));
  132. int usputc __ARGS((int s,char c));
  133. int usputs __ARGS((int s,char *x));
  134. int usvprintf __ARGS((int s,char *fmt, va_list args));
  135.  
  136. /* In file sockutil.c: */
  137. char *psocket __ARGS((void *p));
  138. char *sockerr __ARGS((int s));
  139. char *sockstate __ARGS((int s));
  140.  
  141. #endif
  142.  
  143. #endif  /* _SOCKET_H */
  144.